---
title: SAIF.Services.Imaging.Import business rules
summary: Enumerated business rules with per-rule trigger, enforcement, and outcomes.
status: draft
owner: SAIF Documentation
last_reviewed: 2026-08-21
library: SAIF.Services.Imaging.Import
reference_type: embedded
---

# SAIF.Services.Imaging.Import business rules

This page captures business rules enforced by this library.

## BR-IMG-001 Date field emission

| Field | Value |
| --- | --- |
| **Statement** | A date index field is emitted as `MM-dd-yyyy` only when it is strictly greater than `Date.MinValue` and strictly less than `Date.MaxValue`; otherwise the key is emitted with an empty value. Applies to `DocumentDate`, `ReceivedDate`, and `TaskDate`. |
| **Trigger** | `ToString()` serialization |
| **Enforcement** | `SAIF.Services.Imaging.Import/clsImageImport.vb` (`ToString` method, date-value branches) |
| **Outcome** | Unset or sentinel dates are transmitted as blanks instead of `01-01-0001`, so downstream imaging treats them as "not supplied"* |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## BR-IMG-002 Document date tolerance window emission

| Field | Value |
| --- | --- |
| **Statement** | `DocumentDateDays` is emitted only when greater than zero; otherwise the key is emitted empty. |
| **Trigger** | `ToString()` serialization |
| **Enforcement** | SAIF.Services.Imaging.Import/clsImageImport.vb (`ToString` method) |
| **Outcome** | A non-positive tolerance window suppresses the date-matching hint (default is 7 days) |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## BR-IMG-003 Image sequence number emission

| Field | Value |
| --- | --- |
| **Statement** | `ImageSeqNum` is emitted only when greater than zero; otherwise the key is emitted empty. |
| **Trigger** | `ToString()` serialization |
| **Enforcement** | SAIF.Services.Imaging.Import/clsImageImport.vb (`ToString` method) |
| **Outcome** | A new (unsequenced) image is not falsely bound to sequence 0* |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## BR-IMG-004 Page count emission

| Field | Value |
| --- | --- |
| **Statement** | `NPages` is emitted only when greater than zero; otherwise the key is emitted empty. |
| **Trigger** | `ToString()` serialization |
| **Enforcement** | SAIF.Services.Imaging.Import/clsImageImport.vb (`ToString` method) |
| **Outcome** | Zero or negative page counts are not published; default is 1 page |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## BR-IMG-005 Policy number emission

| Field | Value |
| --- | --- |
| **Statement** | `PolicyNum` is emitted only when greater than zero; otherwise the key is emitted empty. |
| **Trigger** | `ToString()` serialization |
| **Enforcement** | SAIF.Services.Imaging.Import/clsImageImport.vb (`ToString` method) |
| **Outcome** | Claim-only documents are not indexed against policy 0* |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## BR-IMG-006 Affiliation identifier emission

| Field | Value |
| --- | --- |
| **Statement** | `AffiliationId` is emitted only when greater than zero; otherwise the key is emitted empty. |
| **Trigger** | `ToString()` serialization |
| **Enforcement** | SAIF.Services.Imaging.Import/clsImageImport.vb (`ToString` method) |
| **Outcome** | Documents with no affiliation context omit the affiliation index* |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## BR-IMG-007 Legal case identifier emission

| Field | Value |
| --- | --- |
| **Statement** | `LegalCaseId` is emitted only when greater than zero; otherwise the key is emitted empty. |
| **Trigger** | `ToString()` serialization |
| **Enforcement** | SAIF.Services.Imaging.Import/clsImageImport.vb (`ToString` method) |
| **Outcome** | Non-legal documents are not indexed against legal case 0* |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## BR-IMG-008 Construction-time defaults

| Field | Value |
| --- | --- |
| **Statement** | A newly constructed descriptor defaults to: index the image (`ImageIndexFlag="Y"`), file it in the claim file (`ImageFileCode="CLAIM"`), one page (`NPages=1`), a 7-day document-date window (`DocumentDateDays=7`), medium task priority (`TaskPriority="MED"`), system-generated (`SystemGeneratedFlag="Y"`), and not policy-secured (`PolicySecuredFlag="N"`). |
| **Trigger** | Instance construction (property initializers) |
| **Enforcement** | SAIF.Services.Imaging.Import/clsImageImport.vb (property initializers in the class declaration) |
| **Outcome** | Callers that set only claim/document identifiers still produce a valid, indexable claim-file import request* |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## BR-IMG-009 OnBase document type vocabulary

| Field | Value |
| --- | --- |
| **Statement** | OnBase document types are restricted to the published constant vocabulary (`CL - Indemnity`, `CL - Administrative`, `CL - FROI`, `CL - Worker`) and sub-types to (`Correspondence`, `1502`, `SAIF created 801`, `WCD History`); the `OnBase16` token identifies the OnBase document-type vocabulary in use. |
| **Trigger** | Caller assigns `ImageDocumentTypeCode` or category values |
| **Enforcement** | SAIF.Services.Imaging.Import/clsImageImport.vb (`#Region "Constants"`) — advisory only; the class does not validate assigned values |
| **Outcome** | Consistent OnBase classification across callers; a caller that bypasses the constants is not blocked* |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## BR-IMG-010 Wire format contract key set and order

| Field | Value |
| --- | --- |
| **Statement** | The emitted key set, key spelling, and key order form the imaging/xPresso wire contract; every key in the fixed list is always present even when its value is blank. |
| **Trigger** | `ToString()` serialization |
| **Enforcement** | SAIF.Services.Imaging.Import/clsImageImport.vb (`ToString` method) |
| **Outcome** | Downstream parsers can rely on a stable, fully populated key block* |
| **Source** | SAIF.Services.Imaging.Import/clsImageImport.vb |

---

## Notes
- The emitted key order is fixed and not alphabetical (e.g., `SLevel` is emitted after `ReceivedDate`); consumers and downstream imaging configuration must treat the order as part of the integration contract.*
- The field set spans multiple domains (claim, policy, agency/group, legal, task) accreted over time rather than being modelled into sub-objects.*
- No caller within this repository populates `clsImageImport` properties, so the concrete LegalMaintenance scenario that produces a legal-document import (`LegalCaseId`, `LegalCaseNum`, `LegalCopyToClaimFlag`, `LegalDistributionFlag`) is not observable here.**

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [API reference](api/index.md)

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- SAIF.Services.Imaging.Import/clsImageImport.vb
- SAIF.Services.Imaging.Import/SAIF.Services.Imaging.Import.vbproj
